草庐IT

math - float 学坏了吗?

全部标签

ruby - 设置Ruby中 float 的显示精度

在Ruby中可以设置float的显示精度吗?类似于:z=1/3z.to_s#=>0.33333333333333z.to_s(3)#=>0.333z.to_s(5)#=>0.33333或者我是否必须覆盖Float的to_s方法? 最佳答案 z.round(2)或x.round(3)是最简单的解决方案。参见http://www.ruby-doc.org/core-1.9.3/Float.html#method-i-round.也就是说,这只会确保它不超过那么多位数。在1/3的情况下没问题,但如果你说0.25.round(3)你会得到0

ruby - 将 float 四舍五入到 ruby​​ 中最接近的整数

如果我有一个49.967的float并且我执行.to_i它将把它削减到49这对于我使用磁盘空间分析.967超过900mb的空间不会在显示中考虑。是否有将数字四舍五入到最接近的整数的函数,或者我必须像这样自己定义它:classFloatdefto_nearest_i(self+0.5).to_iendend这样我就可以做:>>5.44.to_nearest_i=>5>>5.54.to_nearest_i=>6 最佳答案 试试Float.round。irb(main):001:0>5.44.round=>5irb(main):002:0

ruby - 如何使用#{variable} 在 Ruby 中格式化带有 float 的字符串?

我想格式化一个包含浮点变量的字符串,包括带有固定小数位数的它们,我想用这种格式化语法来实现:amount=Math::PIputs"Currentamount:#{amount}"我想获得当前金额:3.14。我知道我可以用amount=Math::PIputs"Currentamount%.2f"%[amount]但我想问是否有可能以#{}方式进行。 最佳答案 您可以使用"#{'%.2f'%var}":irb(main):048:0>num=3.1415=>3.1415irb(main):049:0>"Piis:#{'%.2f'%n

ruby - 你如何在 JRuby 中将 float 四舍五入到小数点后两位?

如何在JRuby(1.6.x)中将float四舍五入到小数点后两位?number=1.1164number.round(2)#Theaboveshowsthefollowingerror#wrongnumberofarguments(1for0) 最佳答案 (5.65235534).round(2)#=>5.65 关于ruby-你如何在JRuby中将float四舍五入到小数点后两位?,我们在StackOverflow上找到一个类似的问题: https://st

javascript - MathJax:如何删除 "Typesetting math: 100%"显示消息

我正在使用MathJax来呈现一些数学。我如何摆脱左下角的这条消息?我在MathJax的docs中找不到这个. 最佳答案 这是一个状态栏。每MathJax-Docs,您可以在加载mathjax之前通过将消息样式设置为none来关闭它:MathJax.Hub.Config({messageStyle:"none"}); 关于javascript-MathJax:如何删除"Typesettingmath:100%"显示消息,我们在StackOverflow上找到一个类似的问题:

javascript - 为什么在 Math.max 上调用 apply 有效而没有它则无效

如果你让我获取数组的最大值,我会这样做:varnums=[66,3,8,213,965,1,453];Math.max.apply(Math,nums);当然,我也可以这样做:nums.sort(function(a,b){returna-b}.pop(nums.length);但我必须诚实。我需要知道为什么有效-使用.apply(Math,nums)。如果我这样做:Math.max(nums);那是行不通的。通过使用apply,我传入Math作为this-以及数组的nums。但我想知道前者有效而后者无效的“为什么”的复杂性。发生了什么魔法?有一些基本的东西我没有全神贯注。我已经阅读了

Javascript float + float = 字符串?

当我运行它时,它返回NaN。如果我不parseFloat,我将添加2个字符串。我错过了什么?我会说我的结果应该总是一个float?functioncalculate(i){varresult=0.0;$j(".t"+i+"input").each(function(){varnumber=$j(this).val();number=number.replace(",",".");if(parseFloat(number)!=NaN){result=parseFloat(result);number=parseFloat(number);result+=number;}});consol

Javascript - for 循环中的 Math.random

刚刚在Javascript中尝试在for循环的条件(这就是所谓的?)中生成随机数时遇到了一些有趣的事情。所以,如果我要编写这样的代码:for(vari=0;i它会返回这样的结果:958332684456335345311但是如果我要在第二个for循环之前在变量中生成一个随机数:for(vari=0;i它会返回这样的结果:11131421919171921851518211916151320这里究竟发生了什么?这让我困惑了一会儿。for循环中的Math.random()是否在每次迭代后生成一个新的随机数?循环是否运行代码、迭代和检查条件,并在每次检查条件时生成一个新的随机数?这就是正在发

javascript - 为什么 Math.pow(1, NaN) 在 JavaScript 中等于 NaN?

在IEEE754-2008节"9.2.1Specialvalues"有提到pow(+1,y)is1foranyy(evenaquietNaN)如果没有阅读整个文档,维基百科给出了shortcut:The2008versionoftheIEEE754standardsaysthatpow(1,qNaN)andpow(qNaN,0)shouldbothreturn1sincetheyreturn1whateverelseisusedinsteadofquietNaN.为什么Math.pow(1,NaN)在JavaScript中是NaN?不符合标准吗? 最佳答案

javascript - 我如何预测 Math.random 结果?

如果轮盘游戏网站csgopolygon.com正在调用Math.random和Math.floor,我如何预测它的结果? 最佳答案 您认为在理论上可以预测Math.random结果的直觉是正确的。这就是为什么,如果你想构建一个游戏/赌博应用程序,你应该确保使用cryptographicallysecurepseudo-randomnumbergenerator.如果他们正在使用这样的东西,那就别管它了。但是,如果您是正确的,并且他们使用System.time作为Java附带的标准随机数生成器的种子,那么可能有办法。这将涉及生成数百万